Add OSD_STATE_GROUP_ELEMENTS state to osdUpdate() and optimise DMA vs polled MAX7456...
[betaflight.git] / docs / boards / Board - SPRacingF3.md
blobf0a12210324aa62d12fc7c40471f33231934f8b2
1 # Board - Seriously Pro SP Racing F3 (Acro/Deluxe)
3 The Seriously Pro Racing F3 board (SPRacingF3) is the first board designed specifically for Cleanflight.
5 Purchasing boards directly from SeriouslyPro / SP Racing and official retailers helps fund Cleanflight development, it's the reason the Seriously Pro boards exist!  Official retailers are always listed on the SeriouslyPro.com website.
7 Full details available on the website, here:
9 http://seriouslypro.com/spracingf3
11 ## Hardware Features
13 * No compromise I/O. Use all the features all the time; e.g. Connect your OSD + SmartPort + SBus + GPS + LED Strip + Battery Monitoring + Sonar + 8 motors - all at the same time!
14 * On-board high-capacity black box flight log recorder - optimize your tuning and see the results of your setup without guesswork. (Acro and Deluxe)
15 * Next-generation STM32 F3 processor with hardware floating point unit for efficient flight calculations and faster ARM-Cortex M4 core.
16 * Stackable design - perfect for integrating with OSDs and power distribution boards.
17 * 16 PWM I/O lines for ESCs, Servos and legacy receivers. 8 available on standard pin headers. 8 via side mounted connectors.
18 * Supports SBus, SumH, SumD, Spektrum1024/2048, XBus, PPM, PWM receivers. No external inverters required (built-in).
19 * Dedicated output for programmable LEDs - great for orientation, racing and night flying.
20 * Dedicated I2C port for connection of OLED display without needing flight battery.
21 * Battery monitoring ports for voltage and current.
22 * Buzzer port for audible warnings and notifications.
23 * Solder pads in addition to connectors for Sonar, PPM, RSSI, Current, GPIO, LED Strip, 3.3v, 
24 * Developer friendly debugging port (SWD) and boot mode selection, unbrickable bootloader.
25 * Symmetrical design for a super tidy wiring.
26 * Wire up using using pin headers, JST-SH sockets or solder pads. Use either right-angled or straight pin-headers.
27 * Barometer mounted on the bottom of the board for easy wind isolation.
29 ## Serial Ports
31 | Value | Identifier   | RX           | TX           | 5v Tolerant | Notes                                                                                       |
32 | ----- | ------------ | ------------ | ------------ | ----------- | ------------------------------------------------------------------------------------------- |
33 | 1     | USART1       | PA10         | PA9          | YES         | Internally connected to USB port via CP2102 IC.  Also available on a USART1 JST connector and on through hole pins. |
34 | 2     | USART2       | PA15         | PA14         | YES         | Available on USART2 JST port only. |
35 | 3     | USART3       | PB11 / IO2_3 | PB10 / IO2_4 | NO          | Available on IO_2, USART3 JST port and through hole pins. |
37 * You cannot use SWD and USART2 at the same time.
38 * You may encounter flashing problems if you have something connected to the USART1 RX/TX pins.   Power other devices off and/or disconnect them.
40 ## Pinouts
42 Full pinout details are available in the manual, here:
44 http://seriouslypro.com/spracingf3#manual
46 ### IO_1
48 The 8 pin IO_1 connector has the following pinouts when used in RX_PARALLEL_PWM mode.
50 | Pin | Function       | Notes                                        |
51 | --- | -------------- | -------------------------------------------- |
52 | 1   | Ground         |                                              |
53 | 2   | VCC_IN         | Voltage as-supplied by BEC.                  |
54 | 3   | RC_CH1         | |
55 | 4   | RC_CH2         | |
56 | 5   | RC_CH5         | |
57 | 6   | RC_CH6         | |
58 | 7   | LED_STRIP      | Enable `feature LED_STRIP`                   |
59 | 8   | VCC            | 3.3v output for LOW CURRENT application only |
61 When RX_PPM/RX_SERIAL is used the IO_1 pinout is as follows.
63 | Pin | Function       | Notes                                        |
64 | --- | -------------- | -------------------------------------------- |
65 | 1   | Ground         |                                              |
66 | 2   | VCC_IN         | Voltage as-supplied by BEC.                  |
67 | 3   | RX_PPM         | Enable `feature RX_PPM`                      |
68 | 4   | GPIO           |                                              | 
69 | 5   | SoftSerial1_RX |                                              | 
70 | 6   | SoftSerial1_TX |                                              | 
71 | 7   | LED_STRIP      | Enable `feature LED_STRIP`                   |
72 | 8   | VCC            | 3.3v output for LOW CURRENT application only |
74 ### IO_2
76 The 8 pin IO_2 connector has the following pinouts when used in RX_PARALLEL_PWM mode.
78 | Pin | Function          | Notes                                        |
79 | --- | ----------------- | -------------------------------------------- |
80 | 1   | Ground            |                                              |
81 | 2   | VCC_IN            | Voltage as-supplied by BEC.                  |
82 | 3   | RC_CH3            |                                              |
83 | 4   | RC_CH4            |                                              |
84 | 5   | RC_CH7/SONAR_TRIG |                                              |
85 | 6   | RC_CH8/SONAR_ECHO |                                              |
86 | 7   | ADC_1             | Current Sensor                               |
87 | 8   | ADC_2             | RSSI                                         |
89 When RX_PPM/RX_SERIAL is used the IO_2 pinout is as follows.
91 | Pin | Function                  | Notes                                        |
92 | --- | ------------------------- | -------------------------------------------- |
93 | 1   | Ground                    |                                              |
94 | 2   | VCC_IN                    | Voltage as-supplied by BEC.                  |
95 | 3   | RX_SERIAL                 | UART3 RX                                     |
96 | 4   |                           | UART3_TX                                     | 
97 | 5   | SONAR_TRIG/SoftSerial2_RX | Enable `feature SONAR/SOFTSERIAL`     | 
98 | 6   | SONAR_ECHO/SoftSerial2_TX | Enable `feature SONAR/SOFTSERIAL`     | 
99 | 7   | ADC_1                     | Current Sensor                               |
100 | 8   | ADC_2                     | RSSI                                         |
102 ### UART1/2/3
104 | Pin | Function       | Notes                                        |
105 | --- | -------------- | -------------------------------------------- |
106 | 1   | Ground         |                                              |
107 | 2   | VCC_IN         | Voltage as-supplied by BEC.                  |
108 | 3   | TXD            |                                              |
109 | 4   | RXD            |                                              |
111 ### I2C
113 | Pin | Function       | Notes                                        |
114 | --- | -------------- | -------------------------------------------- |
115 | 1   | Ground         |                                              |
116 | 2   | 5.0v           | Voltage as-supplied by BEC OR USB, always on |
117 | 3   | SCL            |                                              |
118 | 4   | SDA            |                                              |
120 ### SWD
122 The port cannot be used at the same time as UART2.
124 | Pin | Function       | Notes                                        |
125 | --- | -------------- | -------------------------------------------- |
126 | 1   | Ground         |                                              |
127 | 2   | NRST           |                                              |
128 | 3   | SWDIO          |                                              |
129 | 4   | SWDCLK         |                                              |